package org.scboy.utils.caches;

/**
 * 数据缓存接口
 * @param <T>
 */
public interface DataCache <T> {
	
	public T get(String id);
	
	/**
	 * 根据ID更新缓存
	 * @return
	 */
	public T update(T data);
	
	/**
	 * 根据Key更新缓存
	 * @param key
	 * @return
	 */
	public T updateByKey(String key);
	
	/**
	 * 移除缓存
	 * @param key
	 * @return
	 */
	public T removeCache(String key);
	
	/**
	 * 清空所有缓存
	 * @return
	 */
	public void removeAll();
}
